Unioni discriminate TypeScript: costruzione di macchine a stati type-safe | MLOG | MLOG